package images;

import java.awt.Image;

import javax.swing.ImageIcon;

public class ImageResize {
	public static ImageIcon createImage(String imagePath, int largeurMax, int hauteurMax){
		return createImage(new ImageIcon(imagePath), largeurMax, hauteurMax);
	}
	public static ImageIcon createImage(ImageIcon image, int largeurMax, int hauteurMax){
		double largeur, hauteur;
		Image photo = image.getImage();
		if(largeurMax == 0 || hauteurMax == 0 || (image.getIconWidth() < largeurMax && image.getIconHeight() < hauteurMax)){
			return image;
		}else{
			if(photo.getHeight(null) >= photo.getWidth(null)){
				hauteur = hauteurMax;
				largeur = hauteur * photo.getWidth(null) / photo.getHeight(null);
			}else{
				largeur = largeurMax;
				hauteur = largeur * photo.getHeight(null) / photo.getWidth(null);
			}
			return new ImageIcon(photo.getScaledInstance((int)largeur,(int)hauteur, Image.SCALE_DEFAULT));
		}
	}
}
